Skip to content

[NO-ISSUE] feat(webkit): add Item inline kind, Item.List, and CardBox padded prop#719

Open
gab-az wants to merge 1 commit into
devfrom
feat/item-list-inline
Open

[NO-ISSUE] feat(webkit): add Item inline kind, Item.List, and CardBox padded prop#719
gab-az wants to merge 1 commit into
devfrom
feat/item-list-inline

Conversation

@gab-az

@gab-az gab-az commented Jul 3, 2026

Copy link
Copy Markdown
Collaborator

Summary

Extends the Item compound and CardBox to support the Figma "list of items in a card" and inline-on-page patterns.

  • Item inline kind — new kind="inline" value that removes the row's outer padding (transparent surface); gap is preserved.
  • Item.List (new sub-component, ./item-list) — divided in-card list: full-width bottom dividers between rows (--border-muted), no gap. Forces its items to the default kind so they never draw a per-item box inside the CardBox.
  • Item.Group — now a gapped (--spacing-lg) off-card list that forces its items to inline, avoiding a box-in-box effect.
  • CardBox padded prop (optional, default true) — pads the content region; set padded=false for flush, edge-to-edge content such as an Item.List.
  • asChild interactivity — when asChild is set, the merged row (e.g. an anchor) now draws the focus-visible ring and hover/active ghost layers, so whole-row links are keyboard- and pointer-legible.

Notes

  • Non-breaking. padded defaults to true, and the three CardBox consumers that pad their own content (onboarding-form, plan-success, deploy-success) were set to :padded="false" so they render identically. The CardBox Default story drops its inner padding to demonstrate the new default.
  • Behavior change (not API-breaking): an Item placed inside Item.Group or Item.List has its kind coerced (to inline / default respectively) via a provided container context. Standalone Items are unaffected.
  • No new runtime dependencies. Divider/gap/padding all use existing design tokens.
  • Storybook: Item stories migrated to the canonical toSfc "Show code" source pattern and widened to w-full; added WithList, WithListAsChild, and Inline stories. Specs (item, card-box) updated with refreshed checksums.

… padded prop

Add an 'inline' Item kind (removes outer padding), a divided in-card Item.List sub-component (forces default kind), a gapped Item.Group that forces inline, and an optional CardBox 'padded' prop (default true). asChild rows now draw the focus-visible ring and hover/active states. Storybook stories migrated to the toSfc source pattern and widened to w-full.
@gab-az gab-az requested a review from a team as a code owner July 3, 2026 00:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant